using System;
using System.Text;
using System.Collections.Generic;


namespace Managistics.Model {
    
    public class DetailInputSheetDomestic {
        private string _itemId;
        private string _inputSheetDId;
        private Items _items;
        private InputSheetDomestic _inputSheetDomestic;
        private float _quantityInputD;
        private bool? _statusItemId;
        public virtual string ItemId {
            get {
                return this._itemId;
            }
            set {
                this._itemId = value;
            }
        }
        public virtual string InputSheetDId {
            get {
                return this._inputSheetDId;
            }
            set {
                this._inputSheetDId = value;
            }
        }
        public virtual Items Items {
            get {
                return this._items;
            }
            set {
                this._items = value;
            }
        }
        public virtual InputSheetDomestic InputSheetDomestic {
            get {
                return this._inputSheetDomestic;
            }
            set {
                this._inputSheetDomestic = value;
            }
        }
        public virtual float QuantityInputD {
            get {
                return this._quantityInputD;
            }
            set {
                this._quantityInputD = value;
            }
        }
        public virtual bool? StatusItemId {
            get {
                return this._statusItemId;
            }
            set {
                this._statusItemId = value;
            }
        }
        #region NHibernate Composite Key Requirements
        public override bool Equals(object obj) {
			if (obj == null) return false;
			var t = obj as DetailInputSheetDomestic;
			if (t == null) return false;
			if (ItemId == t.ItemId
			 && InputSheetDId == t.InputSheetDId)
				return true;

			return false;
        }
        public override int GetHashCode() {
			int hash = GetType().GetHashCode();
			hash = (hash * 397) ^ ItemId.GetHashCode();
			hash = (hash * 397) ^ InputSheetDId.GetHashCode();

			return hash;
        }
        #endregion
    }
}
